home *** CD-ROM | disk | FTP | other *** search
/ BBS in a Box 7 / BBS in a Box - Macintosh - Volume VII (BBS in a Box) (January 1993).iso / Files / Bus / H-L / Invoicer.cpt / RepeatInvcr < prev    next >
Text File  |  1988-01-22  |  8KB  |  349 lines

  1. DIM DT$(13):DIM CH(13):DIM DA$(13):DIM JD$(13)
  2.   CodeChk:
  3.     CLS
  4.     TEXTSIZE(24):TEXTFACE(5)
  5.     PRINT:PRINT SPC(8);"REPEAT INVOICER"
  6.     TEXTSIZE(12):TEXTFACE(0)
  7.     INPUT"Customer Code ('help' for code list): ",CO$
  8.     IF CO$ = "go back" OR CO$ = "back" OR CO$ = "b" THEN FinlScreenTwo
  9.     GOSUB ClearItAll
  10.     IF CO$="help" OR CO$ = "h" THEN CLS: GOTO ListCodes
  11.     IF CO$="temp" THEN CLS:LOAD "Invoicer",R
  12.     IF CO$="quit" OR CO$="q" THEN CLS:LOAD "Open Me First",R
  13.     IF LEN(CO$)<>2 THEN RUN
  14.     
  15. GOSUB Code
  16.  
  17.   SecScreen:
  18. CLS
  19.   Address:
  20.      WINDOW 3,"",(10,45)-(485,145),3
  21.      TEXTFACE (1)
  22.    PrntScreen:
  23.      PRINT CN$
  24.      PRINT AD1$
  25.      PRINT AD2$;", ";AD3$;"  ";
  26.      PRINT zp$
  27. PRINT
  28.      IF count = 1 THEN GOSUB SkipDate
  29.      PRINT"(xx-xx-xxxx)"
  30.      INPUT;"Billing Date:  ", db$
  31.      IF db$ = "" THEN db$=DATE$:CLS: count = 1: GOTO PrntScreen
  32.      IF LEN(db$) = 2 THEN CLS: Subdb$ = db$: db$ = LEFT$(DATE$,3) + Subdb$ + RIGHT$(DATE$,5):count = 1: GOTO PrntScreen
  33.      IF LEN(db$) = 5 THEN CLS: Subdb$ = db$: db$ = Subdb$ + RIGHT$(DATE$,5):count = 1: GOTO PrntScreen
  34.      IF count <>1 THEN SkipDateSkip
  35.      IF LEN(db$) <> 8 THEN PrntScreen
  36.    SkipDate:
  37.      PRINT
  38.      PRINT "Billing Date: ";db$;
  39.    SkipDateSkip:
  40.      PRINT SPC(10);
  41.      INPUT;"Balance forward: $",BF$
  42.      IF BF$ ="" THEN OPEN CO$ FOR INPUT AS #1: INPUT #1, BF: CLOSE #1:GOTO SkipBF
  43.      BF = VAL (BF$)
  44. SkipBF:
  45.     WINDOW 4,"",(10,150)-(485,325),3
  46.     TEXTFACE(1)
  47.      HM = 1
  48.   DTail:
  49.      IF HM > 1 THEN Detail
  50.   JobDescript:
  51.     LINE INPUT;"Job Description: ",JD$(HM)
  52.      PRINT TAB (40);
  53.       IF JD$(HM)="" THEN Detail
  54.   GetTheDate:
  55.     LINE INPUT "Date: ",DA$(HM)
  56.     IF DA$(HM) = "" THEN DA$(HM) = LEFT$(DATE$,6)+RIGHT$(DATE$,2)
  57.     IF LEN(DA$(HM)) = 2 THEN SubDA$ = DA$(HM): DA$(HM) = LEFT$(DATE$,3) + SubDA$ + "-" + RIGHT$(DATE$,2)
  58.     IF LEN(DA$(HM)) = 5 THEN SubDA$ = DA$(HM): DA$(HM) = SubDA$ + "-" + RIGHT$(DATE$,2)
  59.     IF LEN (DA$(HM)) <> 8 THEN GetTheDate
  60.     GOSUB ExSpace
  61.   Detail:
  62.   IF HM = 11 THEN BEEP
  63.     LINE INPUT;"Detail: ",DT$(HM)
  64.     REM modify glossary
  65.  
  66.     IF DT$(HM) = "t" THEN DT$(HM) = "typesetting"
  67.     IF DT$(HM) = "p" THEN DT$(HM) = "paste-up"
  68.     IF DT$(HM) = "s" THEN DT$(HM) = "stats"
  69.     IF DT$(HM) = "pr" THEN DT$(HM) = "printing"
  70.     IF DT$(HM) = "ld" THEN DT$(HM) = "layout/design"
  71.     IF DT$(HM) = "i" THEN DT$(HM) = "illustration"
  72.  
  73.     IF DT$(HM)="jd" THEN GOSUB ExSpace:GOTO JobDescript
  74.     IF DT$(HM)="" THEN CalcTx
  75.     PRINT TAB(40);
  76.     INPUT "Charge: $",CH(HM)
  77.     HM=HM+1: GOTO DTail
  78.  
  79.   ExSpace:
  80.     PRINT
  81.     RETURN
  82.     
  83.   CalcTx:
  84.     OPEN "Tax Rate" FOR INPUT AS #1
  85.     INPUT #1, TaxRate
  86.     CLOSE #1
  87.     TaxRate$ = STR$(TaxRate*100)
  88. TX=CH(1)
  89.     FOR X=2 TO HM-1
  90.     TX=TX+CH(X)
  91.     NEXT
  92.     ST=TX
  93.     IF ts$="y" THEN GOTO TxClr
  94.     TX=ST*TaxRate
  95.     GOTO FinlScreen 
  96.     
  97.   TxClr:
  98.     TX=0
  99.     
  100.   FinlScreen:
  101. WINDOW CLOSE 3:WINDOW CLOSE 4
  102.   FinlScreenTwo:
  103. CLS
  104. WINDOW 3,"",(25,45)-(440,330),3
  105. TEXTSIZE (10):TEXTFACE(1)
  106.     PRINT CN$
  107.     TEXTFACE(5)
  108.     PRINT"Billing Date: ";db$;
  109.     FOR lc=1 TO 22
  110.     PRINT" ";
  111.     NEXT
  112.     PRINT SPC(0);"Balance Forward: ";
  113.     PRINT USING "$$###.##";BF
  114.     TEXTFACE(1)
  115.   
  116. PRINT
  117.          
  118. FOR X=1 TO HM-1
  119.   Date:
  120.     IF DA$(X)="" THEN JbDesc
  121.     PRINT TAB(1); DA$(X);
  122.   JbDesc:
  123.     IF JD$(X)="" THEN Deetl
  124.     TEXTFACE(5)
  125.     PRINT TAB(13);JD$(X);":"
  126.     TEXTFACE(1)
  127.   Deetl:
  128.     IF DT$(X)="" THEN Again 
  129.     PRINT TAB(15); DT$(X);
  130.     IF CH(X)=0 THEN Again:
  131.     PRINT TAB(44);
  132.     PRINT USING "$$###.##";CH(X)
  133.     
  134.   Again:
  135.     NEXT
  136.     
  137. PRINT 
  138.  
  139.     PRINT:PRINT TAB(1);"Subtotal";
  140.     PRINT TAB(44);
  141.     PRINT USING "$$###.##";ST
  142.     IF TX = 0 THEN FinAmt
  143.     PRINT TAB(1);"Tax (";TaxRate$;"%)";
  144.     PRINT TAB(44);
  145.     PRINT USING "$$###.##";TX
  146.   FinAmt:
  147.     PRINT TAB(1);"Total this invoice";
  148.     PRINT TAB(44);
  149.     tt=(ST+TX)
  150.     IT$=STR$(tt)
  151.     PRINT USING "$$###.##";tt
  152.     PRINT TAB (1);"NEW BALANCE FORWARD";
  153. PRINT TAB (44);
  154. bt = (ST+TX+BF)
  155. PRINT USING "$$###.##";bt
  156.  
  157.    Choyce2:
  158.        WINDOW 4,"",(445,45)-(507,330),-3
  159.        BUTTON 1,1,"print",(7,25)-(55,80),1
  160.        BUTTON 2,1,"new",(7,100)-(55,160),1
  161.        BUTTON 3,1,"quit",(7,180)-(55,240),1
  162.        WHILE DIALOG(0)<>1:WEND
  163.        ButtonPushed = DIALOG(1)
  164.        IF ButtonPushed=1 THEN PrntWarning
  165.        IF ButtonPushed =2 THEN  WINDOW CLOSE 3:WINDOW CLOSE 4:GOSUB CodeChk
  166.        IF ButtonPushed =3 THEN WINDOW CLOSE 3:WINDOW CLOSE 4:CLS:LOAD "Open Me First",R
  167.  
  168.    PrntWarning:
  169.     WINDOW 2,"",(105,190)-(365,270),-2
  170.     TEXTFACE(1)
  171.     PRINT"Please make sure printer is turned"
  172.     PRINT"on and loaded with paper."
  173.     BUTTON 1,1,"OK",(105,45)-(165,65),1
  174.     BUTTON 2,1,"cancel",(185,45)-(245,65),1
  175.     WHILE DIALOG(0)<>1:WEND
  176.     ButtonPushed =DIALOG(1)
  177.     IF ButtonPushed=1 THEN WINDOW CLOSE 2:WINDOW OUTPUT 4
  178.     IF ButtonPushed=2 THEN WINDOW CLOSE 2:WINDOW OUTPUT 4:GOTO Choyce2
  179.  
  180.      FOR mp=1 TO 7
  181.      LPRINT CHR$(10)
  182.      NEXT
  183.      LPRINT TAB(8); CN$
  184.      LPRINT TAB(8); AD1$
  185.      LPRINT TAB(8); AD2$;", ";AD3$;"  ";
  186.      LPRINT zp$
  187.   
  188.     FOR mp= 1 TO 2
  189.     LPRINT CHR$(10)
  190.     NEXT
  191.     LPRINT TAB(2);"Billing date:  ";db$;
  192.     LPRINT TAB(79);
  193.     LPRINT USING "$$###.##";BF
  194.     
  195.     FOR m = 1 TO 2
  196.     LPRINT CHR$(10)
  197.     NEXT
  198.  
  199. FOR X=1 TO HM-1
  200.  
  201.   Dte:
  202.     IF DA$(X)="" THEN JbDes
  203.     LPRINT TAB(0);DA$(X);
  204.   JbDes:
  205.     IF JD$(X)="" THEN Deet
  206.     LPRINT TAB(13);CHR$(27);"X";JD$(X);":";
  207.     LPRINT CHR$(27);"Y"
  208.   Deet:
  209.     IF DT$(X)="" THEN Agin
  210.     LPRINT TAB(15); DT$(X);
  211.     IF CH(X)=0 THEN Agin
  212.     LPRINT TAB (60);
  213.     LPRINT USING "$$###.##";CH(X)
  214.   Agin:
  215.     NEXT
  216.     LPRINT CHR$(10)
  217.     LPRINT TAB(13);"Subtotal";
  218.     LPRINT TAB(79);
  219.     LPRINT USING "$$###.##";(ST)
  220.       IF TX = 0 THEN FAmt
  221.     LPRINT TAB(13);"Tax (";TaxRate$;"%)";
  222.     LPRINT TAB(79);
  223.     LPRINT USING "$$###.##";TX
  224.   FAmt:
  225.     LPRINT""
  226.     LPRINT TAB(13);"Total This Invoice";
  227.     LPRINT TAB(79);
  228.     LPRINT USING "$$###.##";tt
  229.  
  230. LPRINT TAB(13);"NEW BALANCE FORWARD";
  231. LPRINT TAB(79);
  232. LPRINT USING "$$###.##";bt
  233.    
  234. GOTO Choyce2
  235.   Code:
  236.     CLOSE #1
  237.     OPEN "Customers A" FOR INPUT AS #1
  238.   ReedIt:
  239.     IF EOF(1) THEN CLOSE #1: CLS:TEXTFACE(1):PRINT:PRINT"This customer not on file…":FOR m = 1 TO 2500:NEXT:CLS:RUN
  240.     INPUT #1,CD$,CN$,AD1$,AD2$,AD3$,zp$,ts$
  241.     IF CD$=CO$ THEN CLOSE #1:GOTO SecScreen
  242.     GOTO ReedIt
  243.   ListCodes:
  244. CLS
  245.   Lst:
  246.      OPEN "Customers B" FOR INPUT AS #1
  247.      WINDOW 2,"",(25,50)-(476,280),3
  248.   OpFile:
  249.      TEXTFACE(1)
  250.      IF EOF(1) THEN CLOSE #1:TEXTFACE(0):GOTO NewWndw
  251.      INPUT #1,CD$,CN$,ts$
  252.      PRINT CD$;
  253.      PRINT" - ";CN$
  254.      GOTO OpFile
  255.  
  256.   NewWndw:
  257.  WINDOW 3,"",(25,285)-(476,330),-3
  258.     BUTTON 1,1,"again",(55,10)-(130,35),1
  259.     BUTTON 2,1,"enter info",(192,10)-(267,35),1
  260.     BUTTON 3,1,"quit",(329,10)-(404,35),1
  261.       WHILE DIALOG(0)<>1:WEND
  262.       ButtonPushed = DIALOG(1)
  263.       IF ButtonPushed = 1 THEN Lst
  264.       IF ButtonPushed  = 2 THEN  WINDOW CLOSE 2:WINDOW CLOSE 3:RUN
  265.       IF ButtonPushed  = 3 THEN LOAD "Open Me First",R
  266.  
  267.   YourChoice:
  268.     WINDOW 3,"",(25,285)-(476,330),-3
  269.     BUTTON 1,1,"again",(55,10)-(130,35),1
  270.     BUTTON 2,1,"print",(192,10)-(267,35),1
  271.     BUTTON 3,1,"quit",(329,10)-(404,35),1
  272.     WHILE DIALOG(0)<>1:WEND
  273.     ButtonPushed =DIALOG(1)
  274.     IF ButtonPushed =1 THEN Strt
  275.     IF ButtonPushed =2 THEN PrntWarning
  276.     IF ButtonPushed =3 THEN CLS:WINDOW OUTPUT 2:CLS:WINDOW OUTPUT 1:CLS: LOAD "Open Me First",R
  277.  
  278. ClearItAll:
  279.     FOR clearall = 1 TO 13
  280.     DT$(clearall) = "":DA$(clearall) = "":JD$(clearall) = "":CH(clearall) = 0:
  281.     NEXT
  282.     RETURN
  283.  
  284.  
  285.  
  286.  
  287.  
  288.  
  289.  
  290.  
  291.  
  292.  
  293.  
  294.  
  295.  
  296.  
  297.  
  298.  
  299.  
  300.  
  301.  
  302.  
  303.  
  304.  
  305.  
  306.  
  307.  
  308.  
  309.  
  310.  
  311.  
  312.  
  313.  
  314.  
  315.  
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324.  
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.  
  338.  
  339.  
  340.  
  341.  
  342.  
  343.  
  344.  
  345.  
  346.  
  347.  
  348.  
  349.